Method and apparatus for providing an interface for triggering device action

ABSTRACT

An approach is provided for causing, at least in part, an identification of one or more triggering devices. A processor may then cause, at least in part, an association of the one or more actions with the one or more triggering devices based, at least in part, on the identification wherein the one or more actions are initiated based, at least in part, on a detection of the one or more triggering devices.

CROSS REFERENCE TO RELATED APPLICATION

The present application is a continuation of U.S. patent applicationSer. No. 13/482,358 filed May 29, 2012, the entire contents of which isincorporated herein by reference.

BACKGROUND

Service providers and device manufacturers (e.g., wireless, cellular,etc.) are continually challenged to deliver value and convenience toconsumers by, for example, providing compelling network services. Onearea of interest has been the development of automating certain actionsto be performed by mobile devices. Many actions may be performed onmobile devices, but important actions are often neglected. For example,users are known to be lazy in taking backups of files on mobile devices.However, there is currently no way to trigger the performance of actionsas mobile devices move past specified locations.

SOME EXAMPLE EMBODIMENTS

Therefore, there is a need for an approach for initiating one or moreactions based on detection of one or more triggering devices fromlocation-based interfaces.

According to one embodiment, a method comprises causing, at least inpart, an identification of one or more triggering devices. The methodalso comprises causing, at least in part, an association of one or moreactions with the one or more triggering devices based, at least in parton the identification, wherein the one or more actions are based, atleast in part, on a detection of the one or more triggering devices.

According to another embodiment, an apparatus comprises at least oneprocessor, and at least one memory including computer program code forone or more computer programs, the at least one memory and the computerprogram code configured to, with the at least one processor, cause, atleast in part, the apparatus to cause, at least in part, anidentification of one or more triggering devices. The apparatus is alsocaused to cause, at least in part, an association of one or more actionswith the one or more triggering devices based, at least in part on theidentification, wherein the one or more actions are based, at least inpart, on a detection of the one or more triggering devices.

According to another embodiment, a computer-readable storage mediumcarries one or more sequences of one or more instructions which, whenexecuted by one or more processors, cause, at least in part, anapparatus to cause, at least in part, an identification of one or moretriggering devices. The apparatus is further caused to cause, at leastin part, an association of one or more actions with the one or moretriggering devices based, at least in part on the identification,wherein the one or more actions are based, at least in part, on adetection of the one or more triggering devices.

According to another embodiment, an apparatus comprises means forcausing, at least in part, an identification of one or more triggeringdevices. The apparatus also comprises means for causing, at least inpart, an association of one or more actions with the one or moretriggering devices based, at least in part on the identification,wherein the one or more actions are based, at least in part, on adetection of the one or more triggering devices.

In addition, for various example embodiments of the invention, thefollowing is applicable: a method comprising facilitating a processingof and/or processing (1) data and/or (2) information and/or (3) at leastone signal, the (1) data and/or (2) information and/or (3) at least onesignal based, at least in part, on (or derived at least in part from)any one or any combination of methods (or processes) disclosed in thisapplication as relevant to any embodiment of the invention.

For various example embodiments of the invention, the following is alsoapplicable: a method comprising facilitating access to at least oneinterface configured to allow access to at least one service, the atleast one service configured to perform any one or any combination ofnetwork or service provider methods (or processes) disclosed in thisapplication.

For various example embodiments of the invention, the following is alsoapplicable: a method comprising facilitating creating and/orfacilitating modifying (1) at least one device user interface elementand/or (2) at least one device user interface functionality, the (1) atleast one device user interface element and/or (2) at least one deviceuser interface functionality based, at least in part, on data and/orinformation resulting from one or any combination of methods orprocesses disclosed in this application as relevant to any embodiment ofthe invention, and/or at least one signal resulting from one or anycombination of methods (or processes) disclosed in this application asrelevant to any embodiment of the invention.

For various example embodiments of the invention, the following is alsoapplicable: a method comprising creating and/or modifying (1) at leastone device user interface element and/or (2) at least one device userinterface functionality, the (1) at least one device user interfaceelement and/or (2) at least one device user interface functionalitybased at least in part on data and/or information resulting from one orany combination of methods (or processes) disclosed in this applicationas relevant to any embodiment of the invention, and/or at least onesignal resulting from one or any combination of methods (or processes)disclosed in this application as relevant to any embodiment of theinvention.

In various example embodiments, the methods (or processes) can beaccomplished on the service provider side or on the mobile device sideor in any shared way between service provider and mobile device withactions being performed on both sides.

For various example embodiments, the following is applicable: Anapparatus comprising means for performing the method of any oforiginally filed claims 1-10, 21-30, and 46-48.

Still other aspects, features, and advantages of the invention arereadily apparent from the following detailed description, simply byillustrating a number of particular embodiments and implementations,including the best mode contemplated for carrying out the invention. Theinvention is also capable of other and different embodiments, and itsseveral details can be modified in various obvious respects, all withoutdeparting from the spirit and scope of the invention. Accordingly, thedrawings and description are to be regarded as illustrative in nature,and not as restrictive.

BRIEF DESCRIPTION OF THE DRAWINGS

The embodiments of the invention are illustrated by way of example, andnot by way of limitation, in the figures of the accompanying drawings:

FIG. 1 is a diagram of a system capable of initiating one or moreactions based on detection of one or more triggering devices fromlocation-based interfaces, according to one embodiment;

FIG. 2 is a diagram of the components of the trigger processor,according to one embodiment;

FIG. 3 is a flowchart of a process for initiating one or more actionsbased on one or more detected triggering devices, according to oneembodiment;

FIG. 4 is a flowchart of a process for associating one or more actionswith one or more triggering devices using user interfaces, according toone embodiment;

FIG. 5 is a flowchart of a process for initiating one or more actionswith context information, capability information, or a combinationthereof, according to one embodiment;

FIGS. 6A-6B are diagrams of user interfaces utilized in the processes ofFIG. 4, according to various embodiments;

FIG. 7 is a diagram of hardware that can be used to implement anembodiment of the invention;

FIG. 8 is a diagram of a chip set that can be used to implement anembodiment of the invention; and

FIG. 9 is a diagram of a mobile terminal (e.g., handset) that can beused to implement an embodiment of the invention.

DESCRIPTION OF SOME EMBODIMENTS

Examples of a method, apparatus, and computer program for initiating oneor more actions based on detection of one or more triggering devicesfrom location-based interfaces are disclosed. In the followingdescription, for the purposes of explanation, numerous specific detailsare set forth in order to provide a thorough understanding of theembodiments of the invention. It is apparent, however, to one skilled inthe art that the embodiments of the invention may be practiced withoutthese specific details or with an equivalent arrangement. In otherinstances, well-known structures and devices are shown in block diagramform in order to avoid unnecessarily obscuring the embodiments of theinvention.

FIG. 1 is a diagram of a system capable of initiating one or moreactions based on detection of one or more triggering devices fromlocation-based interfaces, according to one embodiment. Serviceproviders and device manufacturers (e.g., wireless, cellular, etc.) arecontinually challenged to deliver value and convenience to consumers by,for example, providing compelling network services. One area of interesthas been the development of automating certain actions to be performedby mobile devices. Many actions may be performed on mobile devices, butimportant actions are often neglected. For example, users are known tobe lazy in taking backups of files. However, there is currently no wayto trigger the performance of actions as mobile devices move pastspecified locations.

To address this problem, a system 100 of FIG. 1 introduces thecapability to initiate one or more actions based on detection of one ormore triggering devices from location-based interfaces. In oneembodiment, certain locations may cause certain actions to be performedby mobile devices. For example, one or more users may virtually definephysical devices and/or locations to act as triggers for the actions. Inone scenario, the physical devices and/or locations may be part of modelinterfaces, including 3-dimensional (3-D) map interfaces. The mapinterfaces may show indoor or outdoor locations. Representations ofphysical devices and/or locations in the model interfaces may act asidentifiers for triggering devices. Such triggering device identifiers(and triggering devices) may be associated with an action such that anaction is performed at a mobile device when the mobile device detects anidentifier. For instance, mobile devices may detect identifiers via nearfield communication (NFC). Actions performed may include any actionsperformed on mobile devices, including backing up files, displaying oneor more actions associated with the identifier, providing anadvertisement, checking in an access control system, printing a file, orany combination thereof.

In one embodiment, triggering devices have a NFC field and one or moreidentifiers. Possible triggering devices may include doors, securitygates, elevators, bus stops, electronic billboards, printers,surveillance video cameras, vending machines etc. In one embodiment,such physical objects and/or locations may have representations as partof a user interface, for example, a 3-D map like Nokia City Scene.Mobile devices may then obtain, from the map, the identifier for thetriggering device to perform one or more associated actions. In such anembodiment, users may define the physical proximity between their deviceand the triggering device that will initiate the action. Such proximitymay be defined in terms of precise distances. For example, an action maystart when a mobile phone is within one meter from the triggeringdevice. In such cases, Bluetooth signal strength may be used to detectproximity between devices. In another embodiment, mobile devices maydetect triggering devices as objects in a representation created by theuser. For instance, a triggering device identifier may be recognized ina picture taken by a user using the mobile device. For such a scenario,an action may be initiated when the identifier is detected in the camerapicture.

In yet another embodiment, the interface could be a presentation ofsomething non-physical, such as a graph of social interaction. Forexample, some detected social interaction may serve as a triggeringdevice or identifier that may serve as the catalyst for an action on amobile device. In one such scenario, a social network containing acertain number of members may serve as a triggering device, whereupon anaction, such as a service upgrade or special promotion, is performed ata mobile device when the threshold number of members is reached. Othermobile devices may also serve as triggering devices. For instance, onemobile device may detect the presence of another mobile device thatserves as a triggering device, perhaps, to initiate the action of astatus update at a social network. For such a case, the triggering maybe configured such that the triggering is reciprocal. In other words,mobile devices may act as triggering devices for each other so themobile devices do not have to set up the association between thetriggering device and action each time. Another scenario for suchtriggering may include setting up mobile devices that are part of thesame social network to be triggering devices for each other, so whenmobile devices that are part of the same social network are in closeproximity, the action is initiated. For one case, a social network maydisplay a status update when mobile devices associated with users in asubset (or group) within the network are in close proximity.

In a further embodiment, the interfaces and identifiers may permit usersto define the actions associated with the triggering devices. Forexample where the action includes backing up files, the system 100 mayprovide the user with folders that may be backed up. In one scenario, auser's mobile phone may connect with backup service(s) via e.g. 2/3/4Gcellular data, WAN/WLAN or close-proximity radio like Bluetooth to makethe backup. In other words, the triggering device may not make performthe action itself, it may simply serve as a trigger for the action. Theaction may be performed by another device in another location. Inanother scenario, the triggering device may perform the action itself,for example if the action is to print a document and the triggeringdevice is a printer. The system 100 may be configured such that a mobiledevice's detection of the printer triggering device, initiates printingof a document from the very same printer. In another scenario, thetriggering device, or a third device, may exchange information (e.g.media content, contact information, digital business cards, etc.) withthe user's mobile phone.

In one embodiment, the system 100 may scan an interface, then presentall the possible triggering device identifiers that are part of theinterface. For instance, the system 100 may provide the user with theoption to scroll over a 3-D map interface to see all the possibletriggering devices (as represented by identifiers in the interface). Inone scenario, the 3-D map may be of an indoor location, where the usermay select possible actions to associate with the triggering devices. Insuch a scenario, the user may choose, for instance, a file backupoperation when a mobile phone is in a certain proximity of an office. Inanother scenario, the 3-D map may be of an outdoor location and the usermay select a possible action such as paying car parking or transferringmoney into a toll booth when the mobile device is within a givenproximity of a door or gate.

In one embodiment, the interface may provide users further informationas to the one or more actions. In some instances, such information mayhelp the user define the actions with more detail. In one scenario, theinterface may permit the user to drag-and-drop files from one or moreapplications, to the identifiers to cause an association between theuser-desired action and the triggering devices. In a further scenario,the system 100 may create a presentation of information relevant to theaction, including status information, historical information, relateddata, or a combination thereof. Status information may refer to thestatus of the backup process, for example, a running bar depicting apercentage of completion. Historical information may include the backupinstances for each file or folder, including a listing of dates and/ortimes of the most recent file backup process. Related data may includedata, such as the files themselves, or a combination thereof. Thepresentation may be part of the 3-D interface and/or an AugmentedReality view of the associated identifier. With such related data, theuser may gain assurance that the actions are performed in accordance touser expectations.

In one embodiment, initiating certain actions at mobile devices mayinclude determining one or more applications, services, or a combinationthereof based, at least in part, on the detection of one or moretriggering devices. For instance, the action of backing up a file mayrequire a file backup application to execute the action. The triggeringdevice may initiate the action by notifying the file backup applicationwhen the triggering device and mobile device are within a pre-setproximity.

In another embodiment, triggering devices may be detected via one ormore detecting devices. For one instance, mobile devices may serve asdetecting devices. In this embodiment, initiating the action may takeinto account the context information, capability information, or acombination thereof associated with one or more detecting devices, oneor more triggering devices, or a combination thereof. Contextinformation may refer to the location and/or orientation of a device,while capability information may include what the device is capable of,including device specifications, available applications, memory space,etc.

One example of where triggering device and detecting device contextinformation affects the action performed, is where triggering devicesmay initiate the actions upon detecting user information associated withthe mobile devices. For instance, physical shops may employ digitalservices that can access user information associated with mobiledevices. Then, the shops may push certain kinds of personalizedadvertisements and/or coupons to the user when the user walks by theshop door. For such a scenario, the shop door may be a triggeringdevice. Users may define, through the interface, certain specifications,such as the shops that may interact with the mobile devices to provideadvertisements and/or coupons or the types of interactions that shopsmay have with the mobile devices.

For one use case, a user may leave an office and walk past a door with afile storage device adjacent to it, where walking past the device's NFCfield triggers the backup function for work-related files on the user'sdevice. To perform the backup function, the mobile device may run a NFCmonitoring daemon or other background process that notifies applicationsregistered to it when it detects a nearby NFC triggering device. Forexample, the notification may include the one or more identifiersassociated with the detected triggering device. In such a case, thebackup application may have registered to the NFC device monitoringdaemon that it wanted to receive all NFC device identifiers upondetection. The backup application may then receive the one or more NFCidentifiers from the NFC monitoring deamon and begin searching aninternal data structure, such as a database, to see whether there is anaction associated with the identifiers.

In this file backup case, there is an entry related to the identifiercontaining information related to actions that need to be performed whenthe identifier is detected. The entry may be as follows:

ID Action Source Destination XYZ backup My Documents/http://backup.com/myaccount WorkIn other words, the application is to perform backup operation of filesunder the local file system path “My Documents/Work” into the onlinebackup service <http://backup.com/myaccount> whenever the NFC identifier“XYZ” is observed. In one embodiment, the backup application may supportvarious backup service application programming interfaces, through whichit may perform the backup action. To initially set up the backupapplication, the user may provide requisite access credentials orauthentication for each backup service he wishes to use. For example,the user may provide login credentials for the account “myaccount” inthe <http://backup.com> service to use the application.

In one embodiment, authentication may include special verifications forthe initial set-up. For example, the initial set-up for an action ofchecking into a building may require that a mobile device actually bepresent at the physical location of a triggering device. Subsequently,the check-in may occur using the identifier of the triggering device,which may be a presentation of the physical location. Such anauthentication may provide some increased control in the set-up process.

As shown in FIG. 1, the system 100 comprises a user equipment (UE) 101(or UEs 101 a-101 n) having connectivity to a detection module 103 (ordetection modules 103 a-n), an interface module 107 (or interfacemodules 107 a-n), a trigger processor 109, and a database 111 via acommunication network 105. By way of example, the communication network105 of system 100 includes one or more networks such as a data network,a wireless network, a telephony network, or any combination thereof. Itis contemplated that the data network may be any local area network(LAN), metropolitan area network (MAN), wide area network (WAN), apublic data network (e.g., the Internet), short range wireless network,or any other suitable packet-switched network, such as a commerciallyowned, proprietary packet-switched network, e.g., a proprietary cable orfiber-optic network, and the like, or any combination thereof. Inaddition, the wireless network may be, for example, a cellular networkand may employ various technologies including enhanced data rates forglobal evolution (EDGE), general packet radio service (GPRS), globalsystem for mobile communications (GSM), Internet protocol multimediasubsystem (IMS), universal mobile telecommunications system (UMTS),etc., as well as any other suitable wireless medium, e.g., worldwideinteroperability for microwave access (WiMAX), Long Term Evolution (LTE)networks, code division multiple access (CDMA), wideband code divisionmultiple access (WCDMA), wireless fidelity (WiFi), wireless LAN (WLAN),Bluetooth®, Internet Protocol (IP) data casting, satellite, mobilead-hoc network (MANET), and the like, or any combination thereof.

The UE 101 is any type of mobile terminal, fixed terminal, or portableterminal including a mobile handset, station, unit, device, multimediacomputer, multimedia tablet, Internet node, communicator, desktopcomputer, laptop computer, notebook computer, netbook computer, tabletcomputer, personal communication system (PCS) device, personalnavigation device, personal digital assistants (PDAs), audio/videoplayer, digital camera/camcorder, positioning device, televisionreceiver, radio broadcast receiver, electronic book device, game device,or any combination thereof, including the accessories and peripherals ofthese devices, or any combination thereof. It is also contemplated thatthe UE 101 can support any type of interface to the user (such as“wearable” circuitry, etc.).

In one embodiment, the detection modules 103 may detect one or moreidentifiers associated with one or more triggering devices. In oneembodiment, the detection modules 103 may detect one or more identifiersusing, at least in part, short range wireless communications includingNFC. In another embodiment, the detection modules 103 may work withdetecting devices to detect one or more triggering devices. In such asituation, the triggering devices may be the devices that actuallyperform the action, such as a printer that acts as a triggering devicewhere the action is printing a document from a mobile device. In thesecases, the detection modules 103 may further determine contextinformation, capability information, or a combination thereof associatedwith the detecting devices, triggering devices, or a combinationthereof, and initiate the actions accordingly. For instance, thedetection modules 103 may assess the location or device capabilities ofthe detecting devices and/or triggering devices. In one such scenariofollowing from the printing example, the detection module 103 may detectthat a printer triggering device requires a software update to performthe printing and act accordingly, either by initiating software updateand/or halting printing.

In one embodiment, the detection modules 103 may interact with theinterface modules 107 for the user to configure detection for detectingdevices and triggering devices. In one embodiment, the interface modules107 may generate the user interfaces for the users to select the one ormore actions to associate with the one or more triggering devices. Asdiscussed above, the interface modules 107 may create physical ornon-physical representations containing identifiers associated withtriggering devices for users to associate the triggering devices withactions. In one embodiment, such interfaces include location-basedinterfaces with representations of triggering devices. For instance, theinterface modules 107 may create a 3-D map of an office with the officedoor image as a representation for the actual office door that serves asa triggering device. UEs 101 may display the interfaces so that usersmay select one or more actions to be associated with triggering devicesas depicted by identifiers in the interfaces. When users interact withthe interfaces, the interface modules 107 may inform the triggerprocessor 109 of user selections in associating actions with triggeringdevices.

Once the detection modules 103 and interfaces modules 107 detect thetriggering devices, the trigger processor 109 may initiate one or moreactions associated with the one or more triggering devices. To do so,the trigger processor 109 may determine the triggering devices detected,identify the one or more actions associated with the triggering device,then initiate the actions. To initiate the actions, the triggerprocessor 109 may notify applications and/or services associated withthe actions. In one embodiment, the database 111 may keep track of thetriggering devices and possible actions associated with the triggeringdevices, updating devices as they are added to a setting, and adjustingthe possible actions in accordance to system capabilities.

By way of example, the UE 101, detection modules 103, interface modules107, trigger processor 109, and database 111 communicate with each otherand other components of the communication network 105 using well known,new or still developing protocols. In this context, a protocol includesa set of rules defining how the network nodes within the communicationnetwork 105 interact with each other based on information sent over thecommunication links. The protocols are effective at different layers ofoperation within each node, from generating and receiving physicalsignals of various types, to selecting a link for transferring thosesignals, to the format of information indicated by those signals, toidentifying which software application executing on a computer systemsends or receives the information. The conceptually different layers ofprotocols for exchanging information over a network are described in theOpen Systems Interconnection (OSI) Reference Model.

Communications between the network nodes are typically effected byexchanging discrete packets of data. Each packet typically comprises (1)header information associated with a particular protocol, and (2)payload information that follows the header information and containsinformation that may be processed independently of that particularprotocol. In some protocols, the packet includes (3) trailer informationfollowing the payload and indicating the end of the payload information.The header includes information such as the source of the packet, itsdestination, the length of the payload, and other properties used by theprotocol. Often, the data in the payload for the particular protocolincludes a header and payload for a different protocol associated with adifferent, higher layer of the OSI Reference Model. The header for aparticular protocol typically indicates a type for the next protocolcontained in its payload. The higher layer protocol is said to beencapsulated in the lower layer protocol. The headers included in apacket traversing multiple heterogeneous networks, such as the Internet,typically include a physical (layer 1) header, a data-link (layer 2)header, an internetwork (layer 3) header and a transport (layer 4)header, and various application (layer 5, layer 6 and layer 7) headersas defined by the OSI Reference Model.

FIG. 2 is a diagram of the components of the trigger processor 109according to one embodiment. By way of example, the trigger processor109 includes one or more components for providing one or more actionsbased on detection of one or more triggering devices from location-basedinterfaces. It is contemplated that the functions of these componentsmay be combined in one or more components or performed by othercomponents of equivalent functionality. In this embodiment, the triggerprocessor 109 includes an association module 203, identification module205, action module 207, and initiation module 209. The control logic 201executes at least one algorithm for executing functions at the triggerprocessor 109.

For example, in one embodiment, the control logic 201 may work with theassociation module 203 to determine the actions dictated by userinteractions received from the interface modules 107. As previouslydiscussed, users may interact with interfaces produced by the interfacemodule 107 to select desired actions. The association module 203 mayprocess these selections and triggering device identifiers displayed inconjunction with the selections to associate one or more actions withone or more triggering devices.

In one embodiment, the identification module 205 may work with thecontrol logic 201 to determine the one or more triggering devicesassociated with the one or more identifiers detected. In one embodiment,the identification module 205 may determine one or more applications,one or more services, or a combination thereof to perform the one ormore actions. The determination of one or more applications, services,or a combination thereof may be based, at least in part, on the one ormore triggering devices detected. In one embodiment, the control logic201 may then work with the action module 207 to determine contextinformation, capability information, or a combination thereof associatedwith the one or more detecting devices. In doing so, the action module207 and control logic 201 may cause a determination, modification, or acombination thereof of the one or more actions. For example, the actionmodule 207 may determine that a detecting device and/or triggeringdevice no longer has any memory space to store more backups. The actionmodule 207 may then modify the action of creating a backup, to instead,notify the UE 101 of the memory space limitation and request that the UE101 select an alternate mode of action, including saving to anotherlocation, clearing memory space, etc.

From there, the control logic 201 and initiation module 209 may initiatethe one or more actions based on the applications and/or servicesdetermined by the identification module 205 and any determinationsand/or modifications found by the action module 207. In one scenario,the initiation of the one or more actions, applications, services, or acombination thereof may include an authentication of the one or moretriggering devices, detecting devices, or a combination thereof, wherethe initiation module 209 may not initiation the action without theauthentication. In an additional scenario, the initiation module 209 andcontrol logic 201 may determine status information, historicalinformation, related data, or a combination thereof associated with theone or more actions. The initiation module 209, control logic 201, andinterface modules 107 may then cause, at least in part, a presentationof the status information, historical information, related data, or acombination thereof so assure users that the actions are being carriedout.

FIG. 3 is a flowchart of a process for initiating one or more actionsbased on detection of one or more triggering devices from location-basedinterfaces, according to one embodiment. In one embodiment, the triggerprocessor 109 performs the process 300 and is implemented in, forinstance, a chip set including a processor and a memory as shown in FIG.8. In step 301, the control logic 201 may determine the identificationof one or more triggering devices based, at least in part, on adetection of one or more identifiers associated with the one or moretriggering devices. In one embodiment, the control logic 201 maydetermine the identification, wherein the detection is based, at leastin part, on short range wireless communications including, at least inpart, NFC. Then, the control logic 201 may cause, at least in part, anidentification of one or more triggering devices and cause, at least inpart, an association of one or more actions with the one or moretriggering devices based, at least in part, on the identification (steps303 and 305). As previously discussed, the control logic 201 may engageone or more actions, wherein the one or more actions include, at leastin part, (a) performing one or more backup operations, (b) presenting alist of the one or more actions associated with a detected one of theone or more triggering devices, (c) providing related information, (c)determining a check-in status, (d) printing a file, or (e) a combinationthereof. In one embodiment, the control logic 201 may cause, at least inpart, an authentication of the one or more triggering devices, the oneor more detecting devices, or a combination thereof, wherein ehinitiation of the one or more actions, the one or more application, theone or more services, or a combination thereof is based, at least inpart, on authentication.

After determining the associated one or more actions, the control logic201 may determine one or more applications, one or more services, or acombination thereof based, at least in part, on the detection of the oneor more triggering devices; and cause, at least in part, an initiationof the one or more applications, the one or more services, or acombination thereof to perform the one or more actions (step 307). Insuch a way, control logic 201 may cause actions wherein the one or moreactions are initiated based, at least in part, on a detection of the oneor more triggering devices (step 309).

FIG. 4 is a flowchart of a process for initiating one or more actionsbased on detection of one or more triggering devices from location-basedinterfaces, according to one embodiment. In one embodiment, the triggerprocessor 109 performs the process 400 and is implemented in, forinstance, a chip set including a processor and a memory as shown in FIG.8. In one embodiment, the control logic 201 may create the association,first, by causing, at least in part, a presentation of a location-baseduser interface depicting one or more representations of the one or moretriggering devices (steps 401 and 403). The association may besolidified with the control logic 201 determining one or moreinteractions with the location-based user interface to cause, at leastin part, an initiation of (a) the association of the one or more actionswith the one or more triggering devices, (b) the one or more actions, or(c) a combination thereof. To further provide information, the interfacemodules 107 may determine status information, historical information,related data, or a combination thereof associated with the one or moreactions (step 405), and cause, at least in part, a presentation of thestatus information, the historical information, the related data, or acombination thereof in the location-based user interface previouslydiscussed (step 407).

FIG. 5 is a flowchart of a process for initiating one or more actionsbased on detection of one or more triggering devices from location-basedinterfaces, according to one embodiment. In one embodiment, the triggerprocessor 109 performs the process 500 and is implemented in, forinstance, a chip set including a processor and a memory as shown in FIG.8. In step 501, the control logic 201 may detect one or more triggeringdevices via one or more detecting devices. In doing so, the controllogic 201 may determine context information, capability information, ora combination thereof associated with the one or more detecting devices,the one or more triggering devices, or a combination thereof (step 503),wherein the initiation of the one or more actions, the one or moreapplications, the one or more services, or a combination thereof isbased, at least in part, on the context information, the capabilityinformation, or a combination thereof.

Furthermore, the control logic 201 may cause, at least in part, adetermination, a modification, or a combination thereof of the one ormore actions based, at least in part, on the context information, thecapability information, or a combination thereof (step 505). For step507, the control logic may then initiate the one or more actions,applications, services, or a combination thereof, according to thedetermination, modification, or a combination thereof.

FIGS. 6A-6B are diagrams of user interfaces utilized in the processes ofFIG. 4, according to various embodiments. FIG. 6A is a diagram of aninterface 600A for defining a NFC device through an indoor 3-D model.For instance, the interface 600A may be a 3-D indoor model through whicha user has defined an office door 601 as an identifier for triggeringthe backup creation of a Sales Coach folder 603 on his mobile device.The interface may further include a display of properties of the device,as given by pop-up menu 605. The user may then select 607 the servicesfor the backup, from the properties pop-up menu 605. More specifically,the user may open a 3-D model applications (e.g. Nokia City Scene),click on the office door 601 as an identifier on the model, and havepop-up menu 605 display the information relating to the mobile deviceand/or the triggering device, such as the device specifications, name,type, and services that may be linked to it, such as backing up files.As shown by interface 600A, upon selecting the “Backup” service, theuser may drag-and-drop the Sales Coach folder 603. This may cause theidentifier, backup operation, and selected folder information to becommunicated to the backup application (and/or service). As a result,the backup application may create a new data entry, for instance:

-   -   IDOAO backup Sales Coach http://backup.com/myaccount        The backup location at <http://backupcom/myaccount> may be        predetermined by the user as a default backup location.        Alternately, the backup application may prompt the user to        select a backup location by selecting from a list of possible        backup locations.

FIG. 6B is a diagram of an interface 600B for displaying informationassociated with one or more actions. For the embodiment in interface600B, the presentation may be an Augmented Reality view of a door 609,including an icon 611 for a backed up folder and information regardingthe backup process, such as the number 613 of backup instances andproperties 615 of the instances. This information may be polled from theserver(s) when the user approaches the triggering device andsubsequently be updated continuously. In one embodiment for generatingsuch an interface, the Augmented Reality application may use the NFCmonitoring daemon to obtain the identifier. The system 100 may thencommunicate the identifier with the backup application and determineactions associated with the identifier (and triggering device), as wellas information regarding the status' of the actions. The backupapplication may then receive the identifier and fetch informationregarding backup action associated with the identifier. Specifically forthe properties 615, the backup application may contact backup services“SERVICE1.COM” and “SERVICE2.COM” to query the status of the backups ofthe “Sales Coach” folder 603. Once the backup application receives thestatus from the backup services, the backup application may return theinformation to the Augmented Reality application to create the interface600B.

In one instance, when the user enters the coverage area of the NFCdaemon, the service may automatically notify backup servers to verifythat they are online so that the backup may be created or a previousbackup may be retrieved. If a backup server is unavailable, the servicemay create a temporary backup of the files to a Cloud service, where thesaved file is automatically moved to the original backup server when theserver becomes available.

The processes described herein for an approach for initiating one ormore actions based on detection of one or more triggering devices fromlocation-based interfaces may be advantageously implemented viasoftware, hardware, firmware or a combination of software and/orfirmware and/or hardware. For example, the processes described herein,may be advantageously implemented via processor(s), Digital SignalProcessing (DSP) chip, an Application Specific Integrated Circuit(ASIC), Field Programmable Gate Arrays (FPGAs), etc. Such exemplaryhardware for performing the described functions is detailed below.

FIG. 7 illustrates a computer system 700 upon which an embodiment of theinvention may be implemented. Although computer system 700 is depictedwith respect to a particular device or equipment, it is contemplatedthat other devices or equipment (e.g., network elements, servers, etc.)within FIG. 7 can deploy the illustrated hardware and components ofsystem 700. Computer system 700 is programmed (e.g., via computerprogram code or instructions) to share items using audio as describedherein and includes a communication mechanism such as a bus 710 forpassing information between other internal and external components ofthe computer system 700. Information (also called data) is representedas a physical expression of a measurable phenomenon, typically electricvoltages, but including, in other embodiments, such phenomena asmagnetic, electromagnetic, pressure, chemical, biological, molecular,atomic, sub-atomic and quantum interactions. For example, north andsouth magnetic fields, or a zero and non-zero electric voltage,represent two states (0, 1) of a binary digit (bit). Other phenomena canrepresent digits of a higher base. A superposition of multiplesimultaneous quantum states before measurement represents a quantum bit(qubit). A sequence of one or more digits constitutes digital data thatis used to represent a number or code for a character. In someembodiments, information called analog data is represented by a nearcontinuum of measurable values within a particular range. Computersystem 700, or a portion thereof, constitutes a means for performing oneor more steps of securely distributing files via social networks.

A bus 710 includes one or more parallel conductors of information sothat information is transferred quickly among devices coupled to the bus710. One or more processors 702 for processing information are coupledwith the bus 710.

A processor (or multiple processors) 702 performs a set of operations oninformation as specified by computer program code related to initiatingone or more actions based on detection of one or more triggering devicesfrom location-based interfaces. The computer program code is a set ofinstructions or statements providing instructions for the operation ofthe processor and/or the computer system to perform specified functions.The code, for example, may be written in a computer programming languagethat is compiled into a native instruction set of the processor. Thecode may also be written directly using the native instruction set(e.g., machine language). The set of operations include bringinginformation in from the bus 710 and placing information on the bus 710.The set of operations also typically include comparing two or more unitsof information, shifting positions of units of information, andcombining two or more units of information, such as by addition ormultiplication or logical operations like OR, exclusive OR (XOR), andAND. Each operation of the set of operations that can be performed bythe processor is represented to the processor by information calledinstructions, such as an operation code of one or more digits. Asequence of operations to be executed by the processor 702, such as asequence of operation codes, constitute processor instructions, alsocalled computer system instructions or, simply, computer instructions.Processors may be implemented as mechanical, electrical, magnetic,optical, chemical or quantum components, among others, alone or incombination.

Computer system 700 also includes a memory 704 coupled to bus 710. Thememory 704, such as a random access memory (RAM) or any other dynamicstorage device, stores information including processor instructions forinitiating one or more actions based on detection of one or moretriggering devices from location-based interfaces. Dynamic memory allowsinformation stored therein to be changed by the computer system 700. RAMallows a unit of information stored at a location called a memoryaddress to be stored and retrieved independently of information atneighboring addresses. The memory 704 is also used by the processor 702to store temporary values during execution of processor instructions.The computer system 700 also includes a read only memory (ROM) 706 orany other static storage device coupled to the bus 710 for storingstatic information, including instructions, that is not changed by thecomputer system 700. Some memory is composed of volatile storage thatloses the information stored thereon when power is lost. Also coupled tobus 710 is a non-volatile (persistent) storage device 708, such as amagnetic disk, optical disk or flash card, for storing information,including instructions, that persists even when the computer system 700is turned off or otherwise loses power.

Information, including instructions for initiating one or more actionsbased on detection of one or more triggering devices from location-basedinterfaces, is provided to the bus 710 for use by the processor from anexternal input device 712, such as a keyboard containing alphanumerickeys operated by a human user, a microphone, an Infrared (IR) remotecontrol, a joystick, a game pad, a stylus pen, a touch screen, or asensor. A sensor detects conditions in its vicinity and transforms thosedetections into physical expression compatible with the measurablephenomenon used to represent information in computer system 700. Otherexternal devices coupled to bus 710, used primarily for interacting withhumans, include a display device 714, such as a cathode ray tube (CRT),a liquid crystal display (LCD), a light emitting diode (LED) display, anorganic LED (OLED) display, a plasma screen, or a printer for presentingtext or images, and a pointing device 716, such as a mouse, a trackball,cursor direction keys, or a motion sensor, for controlling a position ofa small cursor image presented on the display 714 and issuing commandsassociated with graphical elements presented on the display 714. In someembodiments, for example, in embodiments in which the computer system700 performs all functions automatically without human input, one ormore of external input device 712, display device 714 and pointingdevice 716 is omitted.

In the illustrated embodiment, special purpose hardware, such as anapplication specific integrated circuit (ASIC) 720, is coupled to bus710. The special purpose hardware is configured to perform operationsnot performed by processor 702 quickly enough for special purposes.Examples of ASICs include graphics accelerator cards for generatingimages for display 714, cryptographic boards for encrypting anddecrypting messages sent over a network, speech recognition, andinterfaces to special external devices, such as robotic arms and medicalscanning equipment that repeatedly perform some complex sequence ofoperations that are more efficiently implemented in hardware.

Computer system 700 also includes one or more instances of acommunications interface 770 coupled to bus 710. Communication interface770 provides a one-way or two-way communication coupling to a variety ofexternal devices that operate with their own processors, such asprinters, scanners and external disks. In general the coupling is with anetwork link 778 that is connected to a local network 780 to which avariety of external devices with their own processors are connected. Forexample, communication interface 770 may be a parallel port or a serialport or a universal serial bus (USB) port on a personal computer. Insome embodiments, communications interface 770 is an integrated servicesdigital network (ISDN) card or a digital subscriber line (DSL) card or atelephone modem that provides an information communication connection toa corresponding type of telephone line. In some embodiments, acommunication interface 770 is a cable modem that converts signals onbus 710 into signals for a communication connection over a coaxial cableor into optical signals for a communication connection over a fiberoptic cable. As another example, communications interface 770 may be alocal area network (LAN) card to provide a data communication connectionto a compatible LAN, such as Ethernet. Wireless links may also beimplemented. For wireless links, the communications interface 770 sendsor receives or both sends and receives electrical, acoustic orelectromagnetic signals, including infrared and optical signals, thatcarry information streams, such as digital data. For example, inwireless handheld devices, such as mobile telephones like cell phones,the communications interface 770 includes a radio band electromagnetictransmitter and receiver called a radio transceiver. In certainembodiments, the communications interface 770 enables connection to thecommunication network 105 for initiating one or more actions based ondetection of one or more triggering devices from location-basedinterfaces.

The term “computer-readable medium” as used herein refers to any mediumthat participates in providing information to processor 702, includinginstructions for execution. Such a medium may take many forms,including, but not limited to computer-readable storage medium (e.g.,non-volatile media, volatile media), and transmission media.Non-transitory media, such as non-volatile media, include, for example,optical or magnetic disks, such as storage device 708. Volatile mediainclude, for example, dynamic memory 704. Transmission media include,for example, twisted pair cables, coaxial cables, copper wire, fiberoptic cables, and carrier waves that travel through space without wiresor cables, such as acoustic waves and electromagnetic waves, includingradio, optical and infrared waves. Signals include man-made transientvariations in amplitude, frequency, phase, polarization or otherphysical properties transmitted through the transmission media. Commonforms of computer-readable media include, for example, a floppy disk, aflexible disk, hard disk, magnetic tape, any other magnetic medium, aCD-ROM, CDRW, DVD, any other optical medium, punch cards, paper tape,optical mark sheets, any other physical medium with patterns of holes orother optically recognizable indicia, a RAM, a PROM, an EPROM, aFLASH-EPROM, an EEPROM, a flash memory, any other memory chip orcartridge, a carrier wave, or any other medium from which a computer canread. The term computer-readable storage medium is used herein to referto any computer-readable medium except transmission media.

Logic encoded in one or more tangible media includes one or both ofprocessor instructions on a computer-readable storage media and specialpurpose hardware, such as ASIC 720.

Network link 778 typically provides information communication usingtransmission media through one or more networks to other devices thatuse or process the information. For example, network link 778 mayprovide a connection through local network 780 to a host computer 782 orto equipment 784 operated by an Internet Service Provider (ISP). ISPequipment 784 in turn provides data communication services through thepublic, world-wide packet-switching communication network of networksnow commonly referred to as the Internet 790.

A computer called a server host 792 connected to the Internet hosts aprocess that provides a service in response to information received overthe Internet. For example, server host 792 hosts a process that providesinformation representing video data for presentation at display 714. Itis contemplated that the components of system 700 can be deployed invarious configurations within other computer systems, e.g., host 782 andserver 792.

At least some embodiments of the invention are related to the use ofcomputer system 700 for implementing some or all of the techniquesdescribed herein. According to one embodiment of the invention, thosetechniques are performed by computer system 700 in response to processor702 executing one or more sequences of one or more processorinstructions contained in memory 704. Such instructions, also calledcomputer instructions, software and program code, may be read intomemory 704 from another computer-readable medium such as storage device708 or network link 778. Execution of the sequences of instructionscontained in memory 704 causes processor 702 to perform one or more ofthe method steps described herein. In alternative embodiments, hardware,such as ASIC 720, may be used in place of or in combination withsoftware to implement the invention. Thus, embodiments of the inventionare not limited to any specific combination of hardware and software,unless otherwise explicitly stated herein.

The signals transmitted over network link 778 and other networks throughcommunications interface 770, carry information to and from computersystem 700. Computer system 700 can send and receive information,including program code, through the networks 780, 790 among others,through network link 778 and communications interface 770. In an exampleusing the Internet 790, a server host 792 transmits program code for aparticular application, requested by a message sent from computer 700,through Internet 790, ISP equipment 784, local network 780 andcommunications interface 770. The received code may be executed byprocessor 702 as it is received, or may be stored in memory 704 or instorage device 708 or any other non-volatile storage for laterexecution, or both. In this manner, computer system 700 may obtainapplication program code in the form of signals on a carrier wave.

Various forms of computer readable media may be involved in carrying oneor more sequence of instructions or data or both to processor 702 forexecution. For example, instructions and data may initially be carriedon a magnetic disk of a remote computer such as host 782. The remotecomputer loads the instructions and data into its dynamic memory andsends the instructions and data over a telephone line using a modem. Amodem local to the computer system 700 receives the instructions anddata on a telephone line and uses an infra-red transmitter to convertthe instructions and data to a signal on an infra-red carrier waveserving as the network link 778. An infrared detector serving ascommunications interface 770 receives the instructions and data carriedin the infrared signal and places information representing theinstructions and data onto bus 710. Bus 710 carries the information tomemory 704 from which processor 702 retrieves and executes theinstructions using some of the data sent with the instructions. Theinstructions and data received in memory 704 may optionally be stored onstorage device 708, either before or after execution by the processor702.

FIG. 8 illustrates a chip set or chip 800 upon which an embodiment ofthe invention may be implemented. Chip set 800 is programmed to shareitems using audio described herein and includes, for instance, theprocessor and memory components described with respect to FIG. 7incorporated in one or more physical packages (e.g., chips). By way ofexample, a physical package includes an arrangement of one or morematerials, components, and/or wires on a structural assembly (e.g., abaseboard) to provide one or more characteristics such as physicalstrength, conservation of size, and/or limitation of electricalinteraction. It is contemplated that in certain embodiments the chip set800 can be implemented in a single chip. It is further contemplated thatin certain embodiments the chip set or chip 800 can be implemented as asingle “system on a chip.” It is further contemplated that in certainembodiments a separate ASIC would not be used, for example, and that allrelevant functions as disclosed herein would be performed by a processoror processors. Chip set or chip 800, or a portion thereof, constitutes ameans for performing one or more steps of providing user interfacenavigation information associated with the availability of functions.Chip set or chip 800, or a portion thereof, constitutes a means forperforming one or more steps of initiating one or more actions based ondetection of one or more triggering devices from location-basedinterfaces.

In one embodiment, the chip set or chip 800 includes a communicationmechanism such as a bus 801 for passing information among the componentsof the chip set 800. A processor 803 has connectivity to the bus 801 toexecute instructions and process information stored in, for example, amemory 805. The processor 803 may include one or more processing coreswith each core configured to perform independently. A multi-coreprocessor enables multiprocessing within a single physical package.Examples of a multi-core processor include two, four, eight, or greaternumbers of processing cores. Alternatively or in addition, the processor803 may include one or more microprocessors configured in tandem via thebus 801 to enable independent execution of instructions, pipelining, andmultithreading. The processor 803 may also be accompanied with one ormore specialized components to perform certain processing functions andtasks such as one or more digital signal processors (DSP) 807, or one ormore application-specific integrated circuits (ASIC) 809. A DSP 807typically is configured to process real-world signals (e.g., sound) inreal time independently of the processor 803. Similarly, an ASIC 809 canbe configured to performed specialized functions not easily performed bya more general purpose processor. Other specialized components to aid inperforming the inventive functions described herein may include one ormore field programmable gate arrays (FPGA), one or more controllers, orone or more other special-purpose computer chips.

In one embodiment, the chip set or chip 800 includes merely one or moreprocessors and some software and/or firmware supporting and/or relatingto and/or for the one or more processors.

The processor 803 and accompanying components have connectivity to thememory 805 via the bus 801. The memory 805 includes both dynamic memory(e.g., RAM, magnetic disk, writable optical disk, etc.) and staticmemory (e.g., ROM, CD-ROM, etc.) for storing executable instructionsthat when executed perform the inventive steps described herein to shareitems using audio. The memory 805 also stores the data associated withor generated by the execution of the inventive steps.

FIG. 9 is a diagram of exemplary components of a mobile terminal (e.g.,handset) for communications, which is capable of operating in the systemof FIG. 1, according to one embodiment. In some embodiments, mobileterminal 901, or a portion thereof, constitutes a means for performingone or more steps of initiating one or more actions based on detectionof one or more triggering devices from location-based interfaces.Generally, a radio receiver is often defined in terms of front-end andback-end characteristics. The front-end of the receiver encompasses allof the Radio Frequency (RF) circuitry whereas the back-end encompassesall of the base-band processing circuitry. As used in this application,the term “circuitry” refers to both: (1) hardware-only implementations(such as implementations in only analog and/or digital circuitry), and(2) to combinations of circuitry and software (and/or firmware) (suchas, if applicable to the particular context, to a combination ofprocessor(s), including digital signal processor(s), software, andmemory(ies) that work together to cause an apparatus, such as a mobilephone or server, to perform various functions). This definition of“circuitry” applies to all uses of this term in this application,including in any claims. As a further example, as used in thisapplication and if applicable to the particular context, the term“circuitry” would also cover an implementation of merely a processor (ormultiple processors) and its (or their) accompanying software/orfirmware. The term “circuitry” would also cover if applicable to theparticular context, for example, a baseband integrated circuit orapplications processor integrated circuit in a mobile phone or a similarintegrated circuit in a cellular network device or other networkdevices.

Pertinent internal components of the telephone include a Main ControlUnit (MCU) 903, a Digital Signal Processor (DSP) 905, and areceiver/transmitter unit including a microphone gain control unit and aspeaker gain control unit. A main display unit 907 provides a display tothe user in support of various applications and mobile terminalfunctions that perform or support the steps of initiating one or moreactions based on detection of one or more triggering devices fromlocation-based interfaces. The display 907 includes display circuitryconfigured to display at least a portion of a user interface of themobile terminal (e.g., mobile telephone). Additionally, the display 907and display circuitry are configured to facilitate user control of atleast some functions of the mobile terminal. An audio function circuitry909 includes a microphone 911 and microphone amplifier that amplifiesthe speech signal output from the microphone 911. The amplified speechsignal output from the microphone 911 is fed to a coder/decoder (CODEC)913.

A radio section 915 amplifies power and converts frequency in order tocommunicate with a base station, which is included in a mobilecommunication system, via antenna 917. The power amplifier (PA) 919 andthe transmitter/modulation circuitry are operationally responsive to theMCU 903, with an output from the PA 919 coupled to the duplexer 921 orcirculator or antenna switch, as known in the art. The PA 919 alsocouples to a battery interface and power control unit 920.

In use, a user of mobile terminal 901 speaks into the microphone 911 andhis or her voice along with any detected background noise is convertedinto an analog voltage. The analog voltage is then converted into adigital signal through the Analog to Digital Converter (ADC) 923. Thecontrol unit 903 routes the digital signal into the DSP 905 forprocessing therein, such as speech encoding, channel encoding,encrypting, and interleaving. In one embodiment, the processed voicesignals are encoded, by units not separately shown, using a cellulartransmission protocol such as enhanced data rates for global evolution(EDGE), general packet radio service (GPRS), global system for mobilecommunications (GSM), Internet protocol multimedia subsystem (IMS),universal mobile telecommunications system (UMTS), etc., as well as anyother suitable wireless medium, e.g., microwave access (WiMAX), LongTerm Evolution (LTE) networks, code division multiple access (CDMA),wideband code division multiple access (WCDMA), wireless fidelity(WiFi), satellite, and the like, or any combination thereof.

The encoded signals are then routed to an equalizer 925 for compensationof any frequency-dependent impairments that occur during transmissionthough the air such as phase and amplitude distortion. After equalizingthe bit stream, the modulator 927 combines the signal with a RF signalgenerated in the RF interface 929. The modulator 927 generates a sinewave by way of frequency or phase modulation. In order to prepare thesignal for transmission, an up-converter 931 combines the sine waveoutput from the modulator 927 with another sine wave generated by asynthesizer 933 to achieve the desired frequency of transmission. Thesignal is then sent through a PA 919 to increase the signal to anappropriate power level. In practical systems, the PA 919 acts as avariable gain amplifier whose gain is controlled by the DSP 905 frominformation received from a network base station. The signal is thenfiltered within the duplexer 921 and optionally sent to an antennacoupler 935 to match impedances to provide maximum power transfer.Finally, the signal is transmitted via antenna 917 to a local basestation. An automatic gain control (AGC) can be supplied to control thegain of the final stages of the receiver. The signals may be forwardedfrom there to a remote telephone which may be another cellulartelephone, any other mobile phone or a land-line connected to a PublicSwitched Telephone Network (PSTN), or other telephony networks.

Voice signals transmitted to the mobile terminal 901 are received viaantenna 917 and immediately amplified by a low noise amplifier (LNA)937. A down-converter 939 lowers the carrier frequency while thedemodulator 941 strips away the RF leaving only a digital bit stream.The signal then goes through the equalizer 925 and is processed by theDSP 905. A Digital to Analog Converter (DAC) 943 converts the signal andthe resulting output is transmitted to the user through the speaker 945,all under control of a Main Control Unit (MCU) 903 which can beimplemented as a Central Processing Unit (CPU).

The MCU 903 receives various signals including input signals from thekeyboard 947. The keyboard 947 and/or the MCU 903 in combination withother user input components (e.g., the microphone 911) comprise a userinterface circuitry for managing user input. The MCU 903 runs a userinterface software to facilitate user control of at least some functionsof the mobile terminal 901 to share items using audio. The MCU 903 alsodelivers a display command and a switch command to the display 907 andto the speech output switching controller, respectively. Further, theMCU 903 exchanges information with the DSP 905 and can access anoptionally incorporated SIM card 949 and a memory 951. In addition, theMCU 903 executes various control functions required of the terminal. TheDSP 905 may, depending upon the implementation, perform any of a varietyof conventional digital processing functions on the voice signals.Additionally, DSP 905 determines the background noise level of the localenvironment from the signals detected by microphone 911 and sets thegain of microphone 911 to a level selected to compensate for the naturaltendency of the user of the mobile terminal 901.

The CODEC 913 includes the ADC 923 and DAC 943. The memory 951 storesvarious data including call incoming tone data and is capable of storingother data including music data received via, e.g., the global Internet.The software module could reside in RAM memory, flash memory, registers,or any other form of writable storage medium known in the art. Thememory device 951 may be, but not limited to, a single memory, CD, DVD,ROM, RAM, EEPROM, optical storage, magnetic disk storage, flash memorystorage, or any other non-volatile storage medium capable of storingdigital data.

An optionally incorporated SIM card 949 carries, for instance, importantinformation, such as the cellular phone number, the carrier supplyingservice, subscription details, and security information. The SIM card949 serves primarily to identify the mobile terminal 901 on a radionetwork. The card 949 also contains a memory for storing a personaltelephone number registry, text messages, and user specific mobileterminal settings.

While the invention has been described in connection with a number ofembodiments and implementations, the invention is not so limited butcovers various obvious modifications and equivalent arrangements, whichfall within the purview of the appended claims. Although features of theinvention are expressed in certain combinations among the claims, it iscontemplated that these features can be arranged in any combination andorder.

What is claimed is:
 1. A method comprising: receiving an indication ofan identification of one or more triggering devices based on a detectedproximity of a mobile device to the one or more triggering devices; andin response to the identification of the one or more triggering devicesbased on the detected proximity of the mobile device, initiating abackup of data from the mobile device to another device.
 2. The methodof claim 1, wherein the detection is based on short range wirelesscommunications comprising near field communications.
 3. The method ofclaim 1, wherein the backup of data occurs via a local area network. 4.The method of claim 1, further comprising: in response to theidentification of the one or more triggering devices, causing data fromthe mobile device to be printed on a printer.
 5. The method of claim 1,further comprising: causing presentation of a location-based userinterface depicting one or more representations of the one or moretriggering devices; and determining one or more interactions with thelocation-based user interface to cause an initiation of an associationof a backup operation with the one or more triggering devices.
 6. Themethod of claim 5, wherein the one or more interactions comprises atleast a user configuration of the one or more triggering devices tocause performance of a selected action.
 7. The method of claim 5,further comprising: determining status information, historicalinformation, related data, or a combination thereof associated with thebackup of data; and causing presentation of the status information, thehistorical information, the related data, or a combination thereof inthe location-based user interface.
 8. The method of claim 1, furthercomprising: determining capability information associated with themobile device, the one or more triggering devices, or a combinationthereof, wherein the initiating the backup of data is based at least onthe capability information.
 9. The method of claim 1, furthercomprising: authenticating the one or more triggering devices, themobile device, or a combination thereof, wherein the initiating of thebackup of the data occurs in response to the authentication.
 10. Themethod of claim 1, further comprising: causing presentation of the oneor more actions associated with a detected one of the one or moretriggering devices.
 11. An apparatus comprising: at least one processor;and at least one memory including computer program code for one or moreprograms, the at least one memory and the computer program codeconfigured to, with the at least one processor, cause the apparatus toperform at least the following: receiving an indication of anidentification of one or more triggering devices based on a detectedproximity of a mobile device to the one or more triggering devices; andin response to the identification of the one or more triggering devicesbased on the detected proximity of the mobile device, initiating abackup of data from the mobile device to another device.
 12. Theapparatus of claim 11, wherein the detection is based on short rangewireless communications comprising near field communications.
 13. Theapparatus of claim 11, wherein the backup of data occurs via a localarea network.
 14. The apparatus of claim 11, further comprising: inresponse to the identification of the one or more triggering devices,causing data from the mobile device to be printed on a printer.
 15. Theapparatus of claim 11, wherein the apparatus is further caused to: causea presentation of a location-based user interface depicting one or morerepresentations of the one or more triggering devices; and determine oneor more interactions with the location-based user interface to cause aninitiation of an association of a backup operation with the one or moretriggering devices.
 16. The apparatus of claim 15, wherein the one ormore interactions comprises at least a user configuration of the one ormore triggering devices to cause performance of a selected action. 17.The apparatus of claim 15, wherein the apparatus is further caused to:determine status information, historical information, related data, or acombination thereof associated with the backup of data; and cause apresentation of the status information, the historical information, therelated data, or a combination thereof in the location-based userinterface.
 18. The apparatus of claim 11, wherein the detection of theone or more triggering devices is via one or more detecting devices,wherein the apparatus is further caused to: determine capabilityinformation associated with the mobile device, the one or moretriggering devices, or a combination thereof, wherein the initiating thebackup of data is based on the capability information.
 19. The apparatusof claim 11, wherein the apparatus is further caused to: cause, at leastin part, an authentication of the one or more triggering devices, themobile device, or a combination thereof, wherein the initiating of thebackup of the data occurs in response to the authentication.
 20. Acomputer program product comprising at least one non-transitorycomputer-readable storage medium having computer-executable program codeinstructions stored therein, the computer-executable program codeinstructions comprising program code instructions to: receive anindication of an identification of one or more triggering devices basedon a detected proximity of a mobile device to the one or more triggeringdevices; and in response to the identification of the one or moretriggering devices based on the detected proximity of the mobile device,initiate a backup of data from the mobile device to another device.